import colorDark from './colorDark';
import colorLight from './colorLight';
import config from '../sys/config';

// 【同步方法】生成独特内置风格的颜色值
function colorMake(color = 'default', type = 'default') {
    
    // 初始化返回数据
    let data_return = '';
    
    // 如果参数有效执行
    if (typeof(color)=="string" && typeof(type)=="string")
    {
        // 初始化要操作的颜色值
        let str_color = '';
        
        // 1. 传入的是Hex或者RGB颜色值
        if (color.indexOf('#')==0 || color.indexOf('rgb')==0)
        {
            // 直接使用传入的颜色值
            str_color = color;
        }
        // 2. 传入的是颜色主题名称
        else {
            // 获取框架颜色主题配置文件
            let obj_themeColor = config('color');
            // 取出对应颜色值
            str_color = obj_themeColor[color] ? obj_themeColor[color] : '';
        }
        
        // 深色系
        if (type == 'dark') { data_return = colorDark(str_color, 0.2); }
        // 浅色系
        else if (type == 'light') { data_return = colorLight(str_color, 0.9); }
        // 禁用系
        else if (type == 'disabled') { data_return = colorLight(str_color, 0.6); }
        // 内容文本色
        else if (type == 'content') { data_return = colorLight(str_color, 0.2); }
        // 备注说明色
        else if (type == 'remark') { data_return = colorLight(str_color, 0.6); }
        // 输入占位色
        else if (type == 'placeholder') { data_return = colorLight(str_color, 0.8); }
        // 默认情况
        else { data_return = colorLight(str_color, 0); }
    }
    
    // 返回结果数据
    return data_return;
}

export default colorMake;